Location based tracking

ABSTRACT

Location information is used to build a database of locations having associated audio, video, image, or text data. In some implementations, a device includes a touch-sensitive display and collects data associated with a geographic location of interest. The geographic location of interest can be displayed on a map using an indicator. A touch selection of the indicator provides access to the data through an interface displayed on the touch-sensitive display. One or more locations of interest can be displayed and grouped together by an attribute.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/857,050, filed on Dec. 28, 2017, and entitled “LOCATION BASEDTRACKING”, which is a continuation of U.S. patent application Ser. No.15/070,613, filed on Mar. 15, 2016, and entitled “LOCATION BASEDTRACKING”, which is a continuation of U.S. patent application Ser. No.14/584,747, filed Dec. 29, 2014, and entitled “LOCATION BASED TRACKING,”which is a continuation of U.S. patent application Ser. No. 13/361,897,filed Jan. 30, 2012, and entitled “LOCATION BASED TRACKING,” which is acontinuation of U.S. patent application Ser. No. 12/164,866, filed Jun.30, 2008, and entitled “LOCATION BASED TRACKING,” which claims priorityto U.S. Provisional Patent Application Ser. No. 60/946,813 filed Jun.28, 2007, and entitled “LOCATION BASED TRACKING,” the contents of eachof which are incorporated herein by reference.

TECHNICAL FIELD

The subject matter of this patent application is generally related tolocation based services.

BACKGROUND

Mobile devices have grown more powerful and feature-rich and now includesuch features as personal digital assistant (PDA) capabilities, camerasto capture video and still images, Internet access, etc. Location-basedservices have been developed for determining and tracking the locationsof the users of mobile devices. Location-based services providelocation-specific information to mobile devices, including, for example,global positioning system (GPS) data to locate the mobile device on amap of a geographic region.

A number of applications are available for aiding users in navigationand route planning. Some of these applications use mobile devicescontaining global positioning systems to define the location of themobile device and plan a route to a desired destination. Currently,however, these route planning systems do not provide a way to documentitems of interest to a user while a route is traveled. In conventionalsystems, the information the route planning systems provide is limitedto what is pre-programmed. This information can become obsolete in timeand may be of little or no interest to the user.

SUMMARY

Location information is used to build a database of locations havingassociated audio, video, image or text data.

In some implementations, a method includes: presenting a map of ageographic region on a touch-sensitive display; receiving touch inputselecting a geographic location; determining geographic positioninginformation of the geographic location; receiving data in response to aninput received by a touch-sensitive display; associating the data withthe geographic positioning information of the geographic location toproduce geographically tagged data; and storing thegeographically-tagged data.

In some implementations a method includes: presenting indications of apredetermined group of geographic locations on a touch-sensitivedisplay; receiving a selection of a geographic location from the groupof geographic locations displayed on the touch-sensitive display; andpresenting geographically tagged data associated with the geographiclocation in a user interface on the touch-sensitive display.

In some implementations, a user interface includes a touch-sensitivedisplay area for displaying indications of a predetermined group ofgeographic locations associated by an attribute, wherein each indicationrepresents geographically coded data associated with a geographicposition, and wherein a name of the attribute is displayed in the userinterface.

Other implementations are disclosed, including implementations directedto systems, methods, apparatuses, computer-readable mediums and userinterfaces.

DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram of an example mobile device.

FIG. 2 is a block diagram of an example network operating environmentfor the mobile device of FIG. 1.

FIG. 3 is a block diagram of an example implementation of the mobiledevice of FIG. 1.

FIGS. 4-10 are exemplary interfaces to input, review and display dataassociated with geographic locations of interest.

FIG. 11 is a flow diagram of an example process for indicatinggeographic locations of interest.

FIG. 12 is a flow diagram of an example process for reviewing andediting data associated with geographic locations of interest.

FIG. 13 is a flow diagram of an example process for interactivelydisplaying data associated with geographic locations of interest.

FIG. 14 is a flow diagram of an example process for playback of dataassociated with geographic locations of interest.

DETAILED DESCRIPTION

FIG. 1 is a block diagram of an example mobile device 100. The mobiledevice 100 can be, for example, a handheld computer, a personal digitalassistant, a cellular telephone, a network appliance, a camera, a smartphone, an enhanced general packet radio service (EGPRS) mobile phone, anetwork base station, a media player, a navigation device, an emaildevice, a game console, or other electronic device, a combination of anytwo or more of these data processing devices or other data processingdevices.

Mobile Device Overview

In some implementations, the mobile device 100 includes atouch-sensitive display 102. The touch-sensitive display 102 canimplement liquid crystal display (LCD) technology, light emittingpolymer display (LPD) technology, or some other display technology. Thetouch-sensitive display 102 can be sensitive to haptic and/or tactilecontact with a user.

In some implementations, the touch-sensitive display 102 can comprise amulti-touch-sensitive display 102. A multi-touch-sensitive display 102can, for example, process multiple simultaneous touch points, includingprocessing data related to the pressure, degree and/or position of eachtouch point. Such processing facilitates gestures and interactions withmultiple fingers, chording, and other interactions. Othertouch-sensitive display technologies can also be used, e.g., a displayin which contact is made using a stylus or other pointing device. Someexamples of multi-touch-sensitive display technology are described inU.S. Pat. Nos. 6,323,846, 6,570,557, 6,677,932, and U.S. PatentPublication 2002/0015024A1, each of which is incorporated by referenceherein in its entirety.

In some implementations, the mobile device 100 can display one or moregraphical user interfaces on the touch-sensitive display 102 forproviding the user access to various system objects and for conveyinginformation to the user. In some implementations, the graphical userinterface can include one or more display objects 104, 106. In theexample shown, the display objects 104, 106, are graphic representationsof system objects. Some examples of system objects include devicefunctions, applications, windows, files, alerts, events, or otheridentifiable system objects.

Exemplary Mobile Device Functionality

In some implementations, the mobile device 100 can implement multipledevice functionalities, such as a telephony device, as indicated by aphone object 110; an e-mail device, as indicated by the e-mail object112; a network data communication device, as indicated by the Web object114; a Wi-Fi base station device (not shown); and a media processingdevice, as indicated by the media player object 116. In someimplementations, particular display objects 104, e.g., the phone object110, the e-mail object 112, the Web object 114, and the media playerobject 116, can be displayed in a menu bar 118. In some implementations,device functionalities can be accessed from a top-level graphical userinterface, such as the graphical user interface illustrated in FIG. 1.Touching one of the objects 110, 112, 114 or 116 can, for example,invoke corresponding functionality.

In some implementations, the mobile device 100 can implement networkdistribution functionality. For example, the functionality can enablethe user to take the mobile device 100 and its associated network whiletraveling. In particular, the mobile device 100 can extend Internetaccess (e.g., Wi-Fi) to other wireless devices in the vicinity. Forexample, mobile device 100 can be configured as a base station for oneor more devices. As such, mobile device 100 can grant or deny networkaccess to other wireless devices.

In some implementations, upon invocation of device functionality, thegraphical user interface of the mobile device 100 changes, or isaugmented or replaced with another user interface or user interfaceelements, to facilitate user access to particular functions associatedwith the corresponding device functionality. For example, in response toa user touching the phone object 110, the graphical user interface ofthe touch-sensitive display 102 may present display objects related tovarious phone functions; likewise, touching of the email object 112 maycause the graphical user interface to present display objects related tovarious e-mail functions; touching the Web object 114 may cause thegraphical user interface to present display objects related to variousWeb-surfing functions; and touching the media player object 116 maycause the graphical user interface to present display objects related tovarious media processing functions.

In some implementations, the top-level graphical user interfaceenvironment or state of FIG. 1 can be restored by pressing a button 120located near the bottom of the mobile device 100. In someimplementations, each corresponding device functionality may havecorresponding “home” display objects displayed on the touch-sensitivedisplay 102, and the graphical user interface environment of FIG. 1 canbe restored by pressing the “home” display object.

In some implementations, the top-level graphical user interface caninclude additional display objects 106, such as a short messagingservice (SMS) object 130, a calendar object 132, a photos object 134, acamera object 136, a calculator object 138, a stocks object 140, aweather object 142, a maps object 144, a notes object 146, a clockobject 148, an address book object 150, and a settings object 152.Touching the SMS display object 130 can, for example, invoke an SMSmessaging environment and supporting functionality; likewise, eachselection of a display object 132, 134, 136, 138, 140, 142, 144, 146,148, 150 and 152 can invoke a corresponding object environment andfunctionality.

Additional and/or different display objects can also be displayed in thegraphical user interface of FIG. 1. For example, if the device 100 isfunctioning as a base station for other devices, one or more“connection” objects may appear in the graphical user interface toindicate the connection. In some implementations, the display objects106 can be configured by a user, e.g., a user may specify which displayobjects 106 are displayed, and/or may download additional applicationsor other software that provides other functionalities and correspondingdisplay objects.

In some implementations, the mobile device 100 can include one or moreinput/output (I/O) devices and/or sensor devices. For example, a speaker160 and a microphone 162 can be included to facilitate voice-enabledfunctionalities, such as phone and voice mail functions. In someimplementations, a loud speaker 164 can be included to facilitatehands-free voice functionalities, such as speaker phone functions. Anaudio jack 166 can also be included for use of headphones and/or amicrophone.

In some implementations, a proximity sensor 168 can be included tofacilitate the detection of the user positioning the mobile device 100proximate to the user's ear and, in response, to disengage thetouch-sensitive display 102 to prevent accidental function invocations.In some implementations, the touch-sensitive display 102 can be turnedoff to conserve additional power when the mobile device 100 is proximateto the user's ear.

Other sensors can also be used. For example, in some implementations, anambient light sensor 170 can be utilized to facilitate adjusting thebrightness of the touch-sensitive display 102. In some implementations,an accelerometer 172 can be utilized to detect movement of the mobiledevice 100, as indicated by the directional arrow 174. Accordingly,display objects and/or media can be presented according to a detectedorientation, e.g., portrait or landscape. In some implementations, themobile device 100 may include circuitry and sensors for supporting alocation determining capability, such as that provided by the globalpositioning system (GPS) or other positioning systems (e.g., systemsusing Wi-Fi access points, television signals, cellular grids, UniformResource Locators (URLs)). In some implementations, a positioning system(e.g., a GPS receiver) can be integrated into the mobile device 100 orprovided as a separate device that can be coupled to the mobile device100 through an interface (e.g., port device 190) to provide access tolocation-based services.

The mobile device 100 can also include a camera lens and sensor 180. Insome implementations, the camera lens and sensor 180 can be located onthe back surface of the mobile device 100. The camera can capture stillimages and/or video.

The mobile device 100 can also include one or more wirelesscommunication subsystems, such as an 802.11b/g communication device 186,and/or a Bluetooth™ communication device 188. Other communicationprotocols can also be supported, including other 802.x communicationprotocols (e.g., WiMAX, Wi-Fi, 3G), code division multiple access(CDMA), global system for mobile communications (GSM), Enhanced Data GSMEnvironment (EDGE), etc.

In some implementations, a port device 190, e.g., a Universal Serial Bus(USB) port, or a docking port, or some other wired port connection, canbe included. The port device 190 can, for example, be utilized toestablish a wired connection to other computing devices, such as othercommunication devices 100, network access devices, a personal computer,a printer, or other processing devices capable of receiving and/ortransmitting data. In some implementations, the port device 190 allowsthe mobile device 100 to synchronize with a host device using one ormore protocols, such as, for example, the TCP/IP, HTTP, UDP and anyother known protocol. In some implementations, a TCP/IP over USBprotocol can be used.

Network Operating Environment

FIG. 2 is a block diagram of an example network operating environment200 for the mobile device 100 of FIG. 1. The mobile device 100 of FIG. 1can, for example, communicate over one or more wired and/or wirelessnetworks 210 in data communication. For example, a wireless network 212,e.g., a cellular network, can communicate with a wide area network (WAN)214, such as the Internet, by use of a gateway 216. Likewise, an accesspoint 218, such as an 802.11g wireless access point, can providecommunication access to the wide area network 214. In someimplementations, both voice and data communications can be establishedover the wireless network 212 and the access point 218. For example, themobile device 100 a can place and receive phone calls (e.g., using VoIPprotocols), send and receive e-mail messages (e.g., using POP3protocol), and retrieve electronic documents and/or streams, such as webpages, photographs, and videos, over the wireless network 212, gateway216, and wide area network 214 (e.g., using TCP/IP or UDP protocols).Likewise, the mobile device 100 b can place and receive phone calls,send and receive e-mail messages, and retrieve electronic documents overthe access point 218 and the wide area network 214. In someimplementations, the mobile device 100 can be physically connected tothe access point 218 using one or more cables and the access point 218can be a personal computer. In this configuration, the mobile device 100can be referred to as a “tethered” device.

The mobile devices 100 a and 100 b can also establish communications byother means. For example, the wireless device 100 a can communicate withother wireless devices, e.g., other wireless devices 100, cell phones,etc., over the wireless network 212. Likewise, the mobile devices 100 aand 100 b can establish peer-to-peer communications 220, e.g., apersonal area network, by use of one or more communication subsystems,such as the Bluetooth™ communication device 188 shown in FIG. 1. Othercommunication protocols and topologies can also be implemented.

The mobile device 100 can, for example, communicate with one or moreservices 230, 240, 250, and 260 and/or one or more content publishers270 over the one or more wired and/or wireless networks 210. Forexample, a navigation service 230 can provide navigation information,e.g., map information, location information, route information, andother information, to the mobile device 100. In the example shown, auser of the mobile device 100 b has invoked a map functionality, e.g.,by pressing the maps object 144 on the top-level graphical userinterface shown in FIG. 1, and has requested and received a map for thelocation “1 Infinite Loop, Cupertino, Calif.”

User devices 280 can, for example, communicate with the one or moreservices 230, 240, 250 and 260 and/or one or more content publishes 260over the one or more wired and/or wireless networks 210 to accesscontent and services as well as communicate with the mobile device 100.The user devices 280 can be, for example, a personal computer, a settop, a gaming device, a digital video recorder, a portable audio orvideo player, an in-vehicle navigation system, etc.

A messaging service 240 can, for example, provide e-mail and/or othermessaging services. A media service 250 can, for example, provide accessto media files, such as song files, movie files, video clips, and othermedia data. One or more other services 260 can also be utilized by themobile device 100.

The mobile device 100 can also access other data and content over theone or more wired and/or wireless networks 210. For example, contentpublishers, e.g., content publisher(s) 270, such as news sites, RSSfeeds, web sites, blogs, social networking sites, developer networks,etc., can be accessed by the mobile device 100. Such access can beprovided by invocation of a web browsing function or application (e.g.,a browser) in response to a user touching the Web object 114.

Exemplary Mobile Device Architecture

FIG. 3 is a block diagram 300 of an example implementation of the mobiledevice 100 of FIG. 1. The mobile device 100 can include a memoryinterface 302, one or more data processors, image processors and/orcentral processing units 304, and a peripherals interface 306. Thememory interface 302, the one or more processors 304 and/or theperipherals interface 306 can be separate components or can beintegrated in one or more integrated circuits. The various components inthe mobile device 100 can be coupled by one or more communication busesor signal lines.

Sensors, devices and subsystems can be coupled to the peripheralsinterface 306 to facilitate multiple functionalities. For example, amotion sensor 310, a light sensor 312, and a proximity sensor 314 can becoupled to the peripherals interface 306 to facilitate the orientation,lighting and proximity functions described with respect to FIG. 1. Othersensors 316 can also be connected to the peripherals interface 306, suchas a positioning system (e.g., GPS receiver), a temperature sensor, abiometric sensor, or other sensing device, to facilitate relatedfunctionalities.

A camera subsystem 320 and an optical sensor 322, e.g., a chargedcoupled device (CCD) or a complementary metal-oxide semiconductor (CMOS)optical sensor, can be utilized to facilitate camera functions, such asrecording photographs and video clips.

Communication functions can be facilitated through one or more wirelesscommunication subsystems 324, which can include radio frequencyreceivers and transmitters and/or optical (e.g., infrared) receivers andtransmitters. The specific design and implementation of thecommunication subsystem 324 can depend on the communication network(s)over which the mobile device 100 is intended to operate. For example, amobile device 100 may include communication subsystems 324 designed tooperate over a GSM network, a GPRS network, an EDGE network, a Wi-Fi orWiMAX network, and a Bluetooth™ network. In particular, the wirelesscommunication subsystems 324 may include hosting protocols such that thedevice 100 may be configured as a base station for other wirelessdevices.

An audio subsystem 326 can be coupled to a speaker 328 and a microphone330 to facilitate voice-enabled functions, such as voice recognition,voice replication, digital recording, and telephony functions.

The I/O subsystem 340 can include a touch screen controller 342 and/orother input controller(s) 344. The touch-screen controller 342 can becoupled to a touch screen 346. The touch screen 346 and touch screencontroller 342 can, for example, detect contact and movement or breakthereof using any of a plurality of touch sensitivity technologies,including but not limited to capacitive, resistive, infrared, andsurface acoustic wave technologies, as well as other proximity sensorarrays or other elements for determining one or more points of contactwith the touch screen 346.

The other input controller(s) 344 can be coupled to other input/controldevices 348, such as one or more buttons, rocker switches, thumb-wheel,infrared port, USB port, and/or a pointer device such as a stylus. Theone or more buttons (not shown) can include an up/down button for volumecontrol of the speaker 328 and/or the microphone 330.

In one implementation, a pressing of the button for a first duration maydisengage a lock of the touch screen 346; and a pressing of the buttonfor a second duration that is longer than the first duration may turnpower to the mobile device 100 on or off. The user may be able tocustomize a functionality of one or more of the buttons. The touchscreen 346 can, for example, also be used to implement virtual or softbuttons and/or a keyboard.

In some implementations, the mobile device 100 can present recordedaudio and/or video files, such as MP3, AAC, and MPEG files. In someimplementations, the mobile device 100 can include the functionality ofan MP3 player, such as an iPod™. The mobile device 100 may, therefore,include a 36-pin connector that is compatible with the iPod. Otherinput/output and control devices can also be used.

The memory interface 302 can be coupled to memory 350. The memory 350can include high-speed random access memory and/or non-volatile memory,such as one or more magnetic disk storage devices, one or more opticalstorage devices, and/or flash memory (e.g., NAND, NOR). The memory 350can store an operating system 352, such as Darwin, RTXC, LINUX, UNIX, OSX, WINDOWS, or an embedded operating system such as VxWorks. Theoperating system 352 may include instructions for handling basic systemservices and for performing hardware dependent tasks. In someimplementations, the operating system 352 can be a kernel (e.g., UNIXkernel).

The memory 350 may also store communication instructions 354 tofacilitate communicating with one or more additional devices, one ormore computers and/or one or more servers. The memory 350 may includegraphical user interface instructions 356 to facilitate graphic userinterface processing; sensor processing instructions 358 to facilitatesensor-related processing and functions; phone instructions 360 tofacilitate phone-related processes and functions; electronic messaginginstructions 362 to facilitate electronic-messaging related processesand functions; web browsing instructions 364 to facilitate webbrowsing-related processes and functions; media processing instructions366 to facilitate media processing-related processes and functions;GPS/Navigation instructions 368 to facilitate GPS and navigation-relatedprocesses and instructions; camera instructions 370 to facilitatecamera-related processes and functions; and/or other softwareinstructions 372 to facilitate other processes and functions.

Each of the above identified instructions and applications cancorrespond to a set of instructions for performing one or more functionsdescribed above. These instructions need not be implemented as separatesoftware programs, procedures or modules. The memory 350 can includeadditional instructions or fewer instructions. Furthermore, variousfunctions of the mobile device 100 may be implemented in hardware and/orin software, including in one or more signal processing and/orapplication specific integrated circuits.

FIG. 4 is an example user interface that is presented on the mobiledevice 100 in response to a user selection of, e.g., the maps object144. The user interface includes an information display area 400 and amap display area 402. A position of the mobile device is indicated by anindicator 404. The information display area 400 receives user input fromthe touch-sensitive display 102. In some implementations, upon an inputof a location, e.g., California, the user is presented with an object408 providing an option to save data associated with the input location.

In some implementations, the user provides a “friendly name” to identifythe location or group of locations of interest. If, for example, a userwould like to save data related to a trip to California, the user canidentify the data by entering, e.g., “My Trip to California” into thedisplay area 400. A user can save the data in accordance with anyattribute.

In some implementations, an indicator 406 can be placed on the mapdisplay area 402 to indicate a particular geographic location ofinterest. For example, if the location if interest is in Cupertino, userinput can be received from the touch sensitive display 102 to place theindicator 406 on the map display area 402 at either the current locationof the mobile device 100 (shown as reference numeral 404) or auser-specified location.

Where the current location of the mobile device 100 is used to specifythe geographic location of interest, according to some implementations,geographic position information can be provided to the mobile device 100from, for example, Global Positioning System (GPS) coordinate data. TheGPS coordinate data can be processed by the GPS/Navigation instructions368 and can be provided from an external or internal GPS navigationsystem. Triangulation and external GPS information can be provided tothe mobile device 100 through the wireless communication subsystems 324or port device 190.

In some implementations, the geographic information regarding thegeographic location of interest is manually input by the user. The usercan input a street address, a latitude/longitude pair, or otheridentifying geographic information to specify the geographic location ofinterest.

After a geographic location of interest has been indicated, in someimplementations, an example user interface 500 shown in FIG. 5 ispresented on the mobile device 100 in response to invoking the cameraobject 136. A next object 502 and back object 504, are provided tonavigate within the user interface 500. A save object 506 and deleteobject 508 are provided to operate on pictures captured by the mobiledevice 100. In some implementations, audio data is captured as thepicture data is captured by the mobile device 100.

In some implementations, pictures captured by the mobile device aregeographically associated with the geographic location of interest whenthe save object 506 is selected to save the currently displayed picture.In some implementations, the geographic association is automaticallyperformed using the determined position of the mobile device. In someimplementations, the geographic association is manually input by a userwhen touching the save object 506 on the touch-sensitive display 102.

In some implementations, the association of geographic information withdata is performed by geo-tagging the data. For example, geographicposition information (e.g., latitude and longitude), geographic placenames, or geographical regions are associated with the data. In theexample of FIG. 5, the geographic information could be, for example,latitude 37.331837, longitude −122.030799; or 1 Infinite Loop,Cupertino, Calif., USA. In some implementations, the geographicinformation can be included as meta tags in a document.

In some implementations, the user interface 500 can be used to capturevideo when the camera object 136 is invoked by a user. The video data issaved on the mobile device 100 with associated geographic information asdescribed above with regard to pictures data.

Referring to FIG. 6, notes (e.g., text information or audio information)about the geographic location of interest can be recorded using thenotes object 146. The next object 502 and back object 504, are providedto navigate within the user interface 600. The save object 506 anddelete object 508 are provided to operate on the notes entered on themobile device 100. In the manner described above, notes received by themobile device 100 are geographically associated with the geographiclocation of interest when the save object 506 is selected to save thecurrent notes on the mobile device 100.

In some implementations, touching the indicator 406 presents a menu itemto invoke a reviewing user interface 700 such as shown in FIG. 7.Objects such as view notes 702, view pictures 704 and view video 706 canbe displayed on the user interface 700. If, for example, the view notesobject 702 is selected the user interface of FIG. 6 can be displayed.If, for example, the view pictures object 704 or the view videos object706 is selected, the user interface of FIG. 5 can be displayed. Anavigation object 708 is provided, for example, to return to theprevious display (e.g., map display area 402 shown in FIG. 4).

As shown in FIG. 8, in some implementations, multiple indicators 406,800, 802, 804 and 806 can be placed on the map display area 402 toindicate multiple locations of interest. In some implementations, foreach geographic location of interest, the user can capture data such as,pictures, notes, audio and video and save it to the mobile device 100with an association to the geographic location of interest as describedabove with regard to indicator 406. In the example interface of FIG. 8,data associated with Palo Alto, Calif. (indicator 800) and SanFrancisco, Calif. (indicators 802, 804 and 806) is saved on the mobiledevice 100.

In some implementations the data associated with the geographiclocations identified by indicators 800, 802, 804 and/or 806 can bereviewed in the reviewing user interface 700 of FIG. 7 in response to aselection of indicators 800, 802, 804 and/or 806. For example, ifindicator 800 is selected, the user interface 700 is presented, however,the information display area 400 would indicate “Stanford University.”Likewise, if indicator 802, 804 or 806 is selected, the informationdisplay area 400 would indicate “San Francisco,” or “Downtown SanFrancisco,” “Golden Gate Bridge,” or “Alcatraz Island,” respectively, ifa higher level of detail is desired.

In some implementations, the data on the mobile device 100 associatedwith locations of interest can be uploaded to a remote storage locationat one of the service providers 230, 240, 250 and 260 and/or contentpublishers 260, or directly to an end-user device 280.

In some implementations, the data associated with locations of interestcan be played back for later viewing as a multimedia presentation. Forexample, in response to a selection of the maps object 144, the datasaved to “My Trip to California” is retrieved and displayed in a userinterface such as FIG. 9.

In some implementations, the multimedia presentation begins bydisplaying the indicator 406 on the map display area 402 as shown inFIG. 9. The presentation continues by showing selected, a predeterminedportion, or all pictures, notes, audio and/or video associated with thegeographic location specified by the indicator 406. For example, theuser interfaces of FIGS. 4 and 5 can be displayed in response to aselection of the indicator 406 such that users can step through thepictures, notes and/or videos using the navigation objects 802 and 804.

In some implementations, as shown in FIG. 9, the multimedia presentationincludes an indicator 900 illustrating a traveled route 900 associatedwith the saved “My Trip to California.” The traveled route 900 can beindicated, for example by a line or an arrow that moves from indicator406 to indicator 800 to illustrate a direction of travel over time.Notes, pictures, audio and/or videos associated with the locationspecified by indicator 800 (e.g., Stanford University) are accessible tothe user as discussed above.

As shown in FIG. 10, the multimedia presentation illustrates thetraveled route indicator 900 moving to the end in San Francisco, Calif.,where indicators 802, 804 and 806 are located. Data associated withindicators 802, 804 and 806 can be displayed as indicated above withregard to indicator 406. For example, notes, pictures, audio and/orvideo associated with downtown San Francisco (e.g., indicator 802), theGolden Gate Bridge (e.g., indicator 804), and/or Alcatraz Island (e.g.,indicator 806) can be displayed.

In some implementations, all of the data saved to “My Trip toCalifornia” is available at once rather than conveying a notion of timeas described above. The user interface of FIG. 10 is used for thepresentation of the pictures, notes, audio and/or video associated withthe all (or a predetermined subset) of the locations of interestindicated by indicators 406, 800, 802, 804 and 806. The user interfacesof FIGS. 4 and 5 can be displayed in response to a selection of one ofthe indicators 406, 800, 802, 804 or 806 such that users can stepthrough the pictures, notes and/or videos using the navigation objects802 and 804.

In some implementations, the pictures, notes and/or videos are compiledinto a movie using an authoring application that converts and aggregatesthe pictures, notes, audio and/or video into a multimedia video datafile, such as an MPEG-2, MPEG-4 AVI, Quicklime, Windows Media,RealVideo, DivX, etc., movie file. The movie can be compiled on a mobiledevice 100 or remotely by one of the services 230, 240, 250 or 260, orcontent publishers 270. For example, in some implementations, the moviebegins by displaying a map of the first geographic location of interest(e.g. Cupertino) and then displaying associated pictures, notes andvideos taken by the mobile device 100 in-succession. The movie changesscenes to a second geographic location of interest (e.g. StanfordUniversity) to display a map and associated pictures, notes, audio andvideos. Finally, the movie continues until the pictures, notes, audioand videos for a final geographic location of interest (e.g., AlcatrazIsland) are displayed.

In some implementations, the data associated with geographic locationscan be requested by the end-user devices 280 for display. A suitableapplication running on an end-user device 280 makes a request over thewide area network 214 to, e.g. the media service 250, the contentpublisher 274, or the wireless device 100 the data to be downloaded orto download the compiled movie.

FIG. 11 is a flow diagram of an example process 1100 for indicatinggeographic locations of interest and acquiring data associated with thegeographic locations of interest. At stage 1102, an indication isreceived of a geographic location of interest. For example, a locationinput in the information display area 400 shown in the user interface ofFIGS. 4 and 5 is confirmed as a geographic location of interest by aselection of the save object 408.

At stage 1104, the geographic position information of the geographiclocation of interest is ascertained. For example, this information canbe manually input or obtained from GPS coordinate data. At stage 1106,data associated with location is received. For example, notes, pictures,audio and/or video associated with the geographic location of interestis input to the mobile device 100 by a selection of the camera object136 or the notes object 146.

At stage 1108, data is stored with the geographic position information.For example, the notes, pictures, audio and/or video received at stage1106 are saved with the geographic position information in the mobiledevice 100. The geographic position information can be automaticallyappended to the notes, pictures, audio and/or video, or manually inputby the user during the save operation.

At stage 1110, it is determined if more data is to be associated withthe geographic location of interest. If so, the process flows to stage1106. If no more data is to be associated with the geographic locationof interest, the process returns to stage 1102.

FIG. 12 is a flow diagram of an example process 1200 for reviewing andediting data associated with geographic locations of interest. At stage1202, an indication is received. For example, a user selects theindicator 406 and an option to edit and/or review data associated withthe geographic area identified by indicator 406. At stage 1204, a userinterface is provided (e.g., launched). For example, in accordance withthe type of data to be displayed, one of user interfaces 500 or 600 islaunched to view and/or edit pictures, videos, and/or notes associatedwith the geographic location of interest identified by indicator 406.

At stage 1206, an indication of an action is received. For example, auser input from one of objects 502, 504, 506 and/or 508 is received bythe mobile device 100. At stage 1208, the received action is performed.For example, a next picture is displayed if the next object 502 isselected, or a previous picture is displayed if the back object 504 isselected. A displayed picture is saved if the save object 506 isselected, or deleted if the deleted object 508 is selected by the user.

FIG. 13 is a flow diagram of an example process 1300 for interactivelydisplaying data associated with geographic locations of interest. Atstage 1302, an indication is received. For example, after invoking themaps object 144, the user selects data associated with “My Trip toCalifornia.” At stage 1304, data is retrieved. For example, the dataassociated with the saved locations of interest identified by “My Tripto California” is retrieved from the memory 350 in the mobile device100.

At stage 1306, a user interface is displayed. For example, the userinterface of FIG. 9 is displayed on the mobile device 100. At stage1308, an indication of location is received. For example, the userselects indicator 406 on the touch sensitive display 102. At stage 1310,data is presented. For example, the interface of FIG. 7 is displayed,from which the user can select to view notes, pictures, audio and/orvideo. In accordance with the selection made by the user, the userinterface 500 or 600 is presented to view the data requested.

After the data is presented, the flow returns to stage 1306. Forexample, when the user selects the back object 708, the user interfaceof FIG. 9 (or FIG. 10) is displayed.

FIG. 14 is a flow diagram of an example process 1400 for playback ofdata associated with one or more geographic locations of interest. Atstage 1402, an indication is received. For example, a location input inthe information display area 400 shown in the user interface of FIGS. 4and 5 is confirmed as a geographic location of interest, or a selectionof object on the touch sensitive display 102 is received.

At stage 1404, an application is launched. For example, a playbackapplication (e.g., media player) executing on the mobile device 100 orend-user device 280 is launched. At stage 1406, data is retrieved. Forexample, data associated with the geographic location of interest isretrieved from the memory 350 or from a remote location and communicatedover the wide area network and/or wireless network to the mobile device100 or end-user device 280.

At stage 1408, a user interface is presented. For example, the userinterface associated with the media player is displayed on the mobiledevice 100 or end-user device 280.

At stage 1410, the data associated with the geographic location ofinterest is presented in the user interface. In accordance with aplayback mode, the notes, pictures, and/or video associated with thegeographic locations of interest are played back in sequence without anyuser interaction.

The disclosed embodiments can be implemented in a computing system thatincludes a back-end component, e.g., as a data server, or that includesa middleware component, e.g., an application server, or that includes afront-end component, e.g., a client computer having a graphical userinterface or a Web browser through which a user can interact with animplementation of what is disclosed here, or any combination of one ormore such back-end, middleware, or front-end components. The componentsof the system can be interconnected by any form or medium of digitaldata communication, e.g., a communication network. Examples ofcommunication networks include a local area network (“LAN”) and a widearea network (“WAN”), e.g., the Internet.

The computing system can include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

While this specification contains many specifics, these should not beconstrued as limitations on the scope of what being claims or of whatmay be claimed, but rather as descriptions of features specific toparticular embodiments. Certain features that are described in thisspecification in the context of separate embodiments can also beimplemented in combination in a single embodiment. Conversely, variousfeatures that are described in the context of a single embodiment canalso be implemented in multiple embodiments separately or in anysuitable sub-combination. Moreover, although features may be describedabove as acting in certain combinations and even initially claimed assuch, one or more features from a claimed combination can in some casesbe excised from the combination, and the claimed combination may bedirected to a sub-combination or variation of a sub-combination.

Similarly, while operations are depicted in the drawings in a particularorder, this should not be understand as requiring that such operationsbe performed in the particular order shown or in sequential order, orthat all illustrated operations be performed, to achieve desirableresults. In certain circumstances, multitasking and parallel processingmay be advantageous. Moreover, the separation of various systemcomponents in the embodiments described above should not be understoodas requiring such separation in all embodiments, and it should beunderstood that the described program components and systems cangenerally be integrated together in a single software product orpackaged into multiple software products.

Embodiments described herein provided techniques to enable locationinformation to be used to build a database of locations havingassociated audio, video, image or text data. One embodiment provides fora method including presenting a map of a geographic region on atouch-sensitive display; receiving touch input selecting a geographiclocation; determining geographic positioning information of thegeographic location; receiving data in response to an input received bya touch-sensitive display; associating the data with the geographicpositioning information of the geographic location to producegeographically tagged data; and storing the geographically-tagged data.

A further embodiment provides for a method including presentingindications of a predetermined group of geographic locations on atouch-sensitive display; receiving a selection of a geographic locationfrom the group of geographic locations displayed on the touch-sensitivedisplay; and presenting geographically tagged data associated with thegeographic location in a user interface on the touch-sensitive display.

In one embodiment a user interface includes a touch-sensitive displayarea for displaying indications of a predetermined group of geographiclocations associated by an attribute, wherein each indication representsgeographically coded data associated with a geographic position, andwherein a name of the attribute is displayed in the user interface. Inone embodiment, a geographic location of interest can be determinedbased on an image captured by a camera of a mobile device. A geographiclocation can be determined based on the captured image. Additional datarelated to the geographic location can be displayed based on thegeographic location determined based on the captured image. Thegeographic location can be determined based on geographically coded dataassociated with or included within the image.

Various modifications may be made to the disclosed implementations andstill be within the scope of the following claims.

What is claimed is:
 1. A method, comprising: receiving, at a firstmobile device, user input requesting data associated with a specifiedgeographic location in a geographic region; transmitting, to a remotestorage location, a request for data objects associated with thespecified geographic location; receiving, from the remote storagelocation, at least one data object associated with the specifiedgeographic location, wherein the at least one data object is at leastone of an image data object, a video data object, or a text data object,wherein the at least one data object is stored at the remote storagelocation in association with data representing the specified geographiclocation; and displaying, on the first mobile device, one or more userinterface elements enabling a user to access the at least one dataobject.
 2. The method of claim 1, wherein the one or more user interfaceelements include at least one of: a user interface element for accessingat least one image data object, a user interface element for accessingat least one video data object, and a user interface element foraccessing at least one text data object.
 3. The method of claim 1,wherein receiving the user input comprises receiving an input to capturean image associated with the specified geographic location.
 4. Themethod of claim 3, comprising: determining the specified geographiclocation based on coded data associated with the image.
 5. The method ofclaim 4, comprising: presenting, on a user interface of the mobiledevice, one or more user interface elements enabling a user to generatedata and access locally stored data, wherein the data includes one ormore of text, images, or video; receiving, at the mobile device, userinput representing an instruction to perform an action comprising atleast one of generating data and accessing locally stored data;associating the at least one of the generated data and accessed locallystored data with the data representing the geographic location; andstoring, on the mobile device, data representing the association of thespecified geographic location and the selected data.
 6. The method ofclaim 1, comprising displaying, in the user interface, a representationof the specified geographic location in association with the one or moreuser interface elements.
 7. The method of claim 6, wherein therepresentation comprises a street address associated with the specifiedgeographical location or a map of the specified geographic location. 8.A non-transitory computer-readable medium including one or moresequences of instructions which, when executed by one or moreprocessors, causes operations comprising: receiving, at a first mobiledevice, user input requesting data associated with a specifiedgeographic location in a geographic region; transmitting, to a remotestorage location, a request for data objects captured associated withthe specified geographic location; receiving, from the remote storagelocation, at least one data object associated with the specifiedgeographic location, wherein the at least one data object is at leastone of an image data object, a video data object, or a text data object,wherein the at least one data object is stored at the remote storagelocation in association with data representing the specified geographiclocation; and displaying, on the first mobile device, one or more userinterface elements enabling a user to access the at least one dataobject.
 9. The non-transitory computer-readable medium of claim 8,wherein the one or more user interface elements include at least one of:a user interface element for accessing at least one image data object, auser interface element for accessing at least one video data object, anda user interface element for accessing at least one text data object.10. The non-transitory computer-readable medium of claim 8, whereinreceiving the user input comprises receiving an input to capture animage associated with the specified geographic location.
 11. Thenon-transitory computer-readable medium of claim 10, the operationscomprising: determining the specified geographic location based on codeddata associated with the image.
 12. The non-transitory computer-readablemedium of claim 11, the operations comprising: presenting, on the userinterface of the mobile device, one or more user interface elementsenabling a user to generate data and access locally stored data, whereinthe data includes one or more of text, images, or video; receiving, atthe mobile device, user input representing an instruction to perform anaction comprising at least one of generating data and accessing locallystored data; associating the at least one of the generated data andaccessed locally stored data with the data representing the geographiclocation; and storing, on the mobile device, data representing theassociation of the specified geographic location and the selected data.13. The non-transitory computer-readable medium of claim 8, theoperations comprising displaying, in the user interface, arepresentation of the specified geographic location in association withthe one or more user interface elements.
 14. The non-transitorycomputer-readable medium of claim 13, wherein the representationcomprises a street address associated with the specified geographicallocation or a map of the specified geographic location.
 15. A systemcomprising: one or more processors; and a non-transitorycomputer-readable medium including one or more sequences of instructionswhich, when executed by the one or more processors, causes operationscomprising: receiving, at a first mobile device, user input requestingdata associated with a specified geographic location in a geographicregion; transmitting, to a remote storage location, a request for dataobjects associated with the specified geographic location; receiving,from the remote storage location, at least one data object associatedwith the specified geographic location, wherein the at least one dataobject is at least one of an image data object, a video data object, ora text data object, wherein the at least one data object is stored atthe remote storage location in association with data representing thespecified geographic location; and displaying, on the first mobiledevice, one or more user interface elements enabling a user to accessthe at least one data object.
 16. The system of claim 15, wherein theone or more user interface elements include at least one of: a userinterface element for accessing at least one image data object, a userinterface element for accessing at least one video data object, and auser interface element for accessing at least one text data object. 17.The system of claim 15, wherein receiving the user input comprisesreceiving an input to capture an image associated with the specifiedgeographic location.
 18. The system of claim 17, the operationscomprising: determining the specified geographic location based on codeddata associated with the image.
 19. The system of claim 18, theoperations comprising: presenting, on the user interface of the mobiledevice, one or more user interface elements enabling a user to generatedata and access locally stored data, wherein the data includes one ormore of text, images, or video; receiving, at the mobile device, userinput representing an instruction to perform an action comprising atleast one of generating data and accessing locally stored data;associating the at least one of the generated data and accessed locallystored data with the data representing the geographic location; andstoring, on the mobile device, data representing the association of thespecified geographic location and the selected data.
 20. The system ofclaim 15, the operations comprising displaying, in the user interface, arepresentation of the specified geographic location in association withthe one or more user interface elements, wherein the representation ofthe specified geographic location comprises a map of the specifiedgeographic location or a street address associated with the specifiedgeographic location.